Interpersonal spacetime interaction system

ABSTRACT

The present innovation provides a method of establishing a connection between two individuals using an interpersonal spacetime interaction system, including enabling a first user to specify a spacetime event and to provide annotations for the spacetime event, maintaining a spacetime database comprising data objects, each data object corresponding to a spacetime event, querying a spacetime database, using a query that includes at least a specification of a desired spacetime event, said query being initiated by a second user, retrieving information from those data objects in the spacetime database whose corresponding spacetime events are proximate to the desired spacetime event, and providing the retrieved information to the second user.

PRIORITY REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.13/063,304, filed Mar. 10, 2011, which is a National Stage Entry of PCTApplication Serial No. PCT/US2009/005138, filed on Sep. 14, 2009, whichclaims the benefit of the U.S. Provisional Application Ser. No.61/096,707, filed on Sep. 12, 2008, the contents of which areincorporated by reference in their entirety for all purposes.

FIELD OF THE INVENTION

The present invention relates to a system that defines events as subsetsof space and time and is able to store, retrieve and manipulate dataobjects defining such events with the objective of automating andsimplifying the process of bringing individuals into contact with eachother. Further, the system enables individuals to use mobile devices andpersonal computers to identify other individuals and objects based ontheir location in space and time.

BACKGROUND OF THE INVENTION

There are a wide number of applications that can benefit from theability to determine proximity of individuals and objects in time andspace. Specifically, newspapers, local periodicals and online servicesoffer the ability for individuals to locate other individuals thathappened to be in a specific cafe, restaurant, or bus bench at aspecific time. Further, newspapers, local periodicals and onlineservices offer lost and found services that bring losers of objects intocontact with finders of objects.

The concept of spacetime, also commonly referred to as space-time andspace time, has been extensively applied in the fields of physics andhistory. For enabling human interactions, perhaps the closest use hasbeen group calendars and online meeting and event systems that assistindividuals and groups to schedule activities. Some online meetingplanning systems, such as Microsoft Outlook by the Microsoft Corporationheadquartered in Redmond, Wash., enable teams of individuals to schedulemeetings that use resources such as meeting rooms. However, the moregeneral concept of spacetime, allowing an individual to define subsetsof space and time using a generic representation, such as that providedby GPS coordinates, has not been used to enable individuals unknown toeach other to plan, schedule, coordinate and otherwise interact. Ageneral name for a system that enables individuals to interact using ageneral spacetime coordinate system is referred to herein as aninterpersonal spacetime interaction system, or ISIS.

With the growth of online map systems such as Google Maps provided byGoogle, Inc. of Mountain View, and the MapQuest mapping service providedby AOL.COM headquartered in New York, N.Y. many systems now use a GPSrepresentation of space. For example, some geographic informationsystems (GIS), a term that refers to systems and applications that storeand manipulate geographic information, incorporate a temporal component.That is, they allow the definition of events as portions of spacetime.Spacetime systems have been implemented in the areas of history andtransportation. Historical systems have been used to create historicalmaps that can be interactively explored in space and time by a user. Intransportation, spacetime systems are used to track the movement ofdelivery vehicles. Such systems are not well-suited to enableinteraction between individuals.

Recently, several online services, including Loopt and Brightkite haveintegrated online mapping with the ability to indicate the presentlocation of certain individuals. However, these services focus on mobiledevices. Further, they focus on the present moment enabling individualsonly to communicate in real-time, and are thus not well-suited tospecify times and events in the past or future. Loopt is based inMountain View, Calif. Brightkite is based in Burlingame, Calif.

One potential use for an ISIS is to enable individuals to interact ormeet using personal computers, PCs, or mobile devices. PCs and mobiledevices enable individuals to access websites. Further, a growing numberof mobile devices are able to run applications that send and receiveinformation across the Internet. The applications may be preloaded ontothe mobile device prior to purchase. Alternatively the applications mayalso download the application from a server that is accessible from theInternet.

Most mobile devices are equipped with high quality display screens thatcan display photos. Many mobile devices can capture, store and uploadphotos to an online service that stores photos centrally.

One potential use for ISIS is to enable individuals that see each otherin public locations to make contact. Currently, many factors contributeto preventing individuals from introducing themselves based solely onchance meetings, or physical proximity in public places. For example,one person may be engaged in a conversation with a friend and the otherperson doesn't want to interrupt or might be embarrassed to do so. Thegrowth in online dating services strongly indicates that there is amarket need for services that enable individuals to meet.

Many newspapers and online services enable individuals to attempt tomake contact by posting messages that explain the circumstances in whichthey saw or were in physical proximity to another person and thatprovide a means for the other person to make contact. For example, thepopular website Craigslist offers a “missed connections” section thatenables individuals to try and make contact in this way.

In addition, ISIS can be used as the basis for an online lost and foundsystem. Current implementations of lost-and-found services, such aslost-and-found section of craigslist.com, provided by Craigslist Inc. ofSan Francisco, Calif., require finders to read through a very largenumber of lost object postings to identify the one that comes from theowner of the lost object, and vice versa. This is because online lostand found systems do not have a fine-grained method for partitioningspace. Typically they operate in large metropolitan areas. Moreover,there is no indexing of time, as postings of lost objects are simplylisted in the order in which they are received. Thus, such systems haveno way of automatically matching a location in space and time when anobject was lost with a location in space and time when an object wasfound. Because such information is currently described in text there isa considerable burden on both the loser and finder of an object toprovide and read sufficient information to enable an object's finder andthat object's loser to discover each other. The considerable effortrequired on the part of both losers and finders of objects may act as adisincentive towards utilizing such a system.

Therefore, there is a need for systems and methods that enableindividuals to contact one another based on the automatic detection ofthe proximity of events in time and space.

SUMMARY OF THE DESCRIPTION

The present invention concerns the ability of individuals to identifyand connect with other individuals using mobile devices such as mobilephones and network devices such as Internet connected personalcomputers. It defines a general system that enables individuals todefine events in time and space and annotate them, adds relatedinformation to the events to create spacetime data objects, or simplyobjects, which can be stored, retrieved and manipulated to automate andimprove the efficiency of a number of existing human activities. Theobjective of the present invention, referred to hereinafter as anindividual spacetime interaction system, ISIS, is to bring individualsinto contact based on automated processing of spacetime objects.

The present invention enables asynchronous communication, i.e.individuals do not have to use the system at the same time orcommunicate in real time. It enables individuals to contact each otherbased on their common declaration of interest in proximate portions ofspacetime, where proximity provides an indication of closeness inspacetime the definition of which may vary fromapplication-to-application.

The present invention discloses an ISIS, and several embodiments of anISIS, including an interpersonal contact system and a lost and foundsystem.

One aspect of the present innovation is that it facilitates the abilityof individuals potentially unknown to each other to meet in real time,based on physical proximity. It provides a way for individuals todetermine if other individuals are interested in meeting them withouthaving to disrupt the other person's conversation or activity or riskthe embarrassment of an in-person rejection.

Various embodiments are directed towards enabling a user to define anevent in spacetime, annotate the event with information such as a title,a description, and a photo, create a spacetime object, store thespacetime object in a spacetime database and then retrieve spacetimeobjects, typically created as a result of actions taken by other users,based on a query. Supported query primitives include intersection ofevents and proximity of spacetime events.

A user interaction method for specifying spacetime events and annotatingthem with descriptive information such as title and text is disclosed.Further, a user interaction method for formulating spacetime queriesbased on interactive online map is disclosed.

There is thus provided in accordance with an embodiment of the presentinvention a method for establishing a connection between two individualsusing an interpersonal spacetime interaction system, comprising enablinga first user to specify a spacetime event wherein a spacetime eventcomprising a subset of spacetime, the specification of which includes aspatial portion and a temporal portion, and to provide annotations forthe spacetime event, maintaining a spacetime database comprising dataobjects, each data object corresponding to a spacetime event, includingthe specification of the spacetime event, a designation of an owner ofthe data object, and the annotations for the spacetime event, querying aspacetime database, using a query that includes at least a specificationof a desired spacetime event, said query being initiated by a seconduser, retrieving information from those data objects in the spacetimedatabase whose corresponding spacetime events are proximate to thedesired spacetime event, and providing the retrieved information to thesecond user.

There is further provided in accordance with an embodiment of thepresent invention a system for establishing a connection between twoindividuals using an interpersonal spacetime interaction system,comprising a website that enables a first user to specify a spacetimeevent wherein a spacetime event comprising a subset of spacetime, thespecification of which includes a spatial portion and a temporalportion, and to provide annotations for the spacetime event, a spacetimedatabase for storing data objects, each data object corresponding to aspacetime event, including the specification of the spacetime event, adesignation of an owner of the data object, and the annotations for thespacetime event; and a web interface for querying a spacetime database,using a query that includes at least a specification of a desiredspacetime event, said query being initiated by a second user, retrievinginformation from those data objects in the spacetime database whosecorresponding spacetime events are proximate to the desired spacetimeevent, and providing the retrieved information to the second user.

A lost and found system embodiment is disclosed that enables the loserof an object to disclose their estimate of the space and timecoordinates of lost item and for finders of objects to disclose thespace and time coordinates found item and for the system toautomatically match loser events with finder events and to provideelectronic notifications to the finders. This brings a new level ofautomation and specificity to lost and found systems since the finderdoes not have to review a large number of items that are not goodcandidates because they were not lost at an appropriate time or place.Moreover, finders do not need to describe the found object, only thespace and time of their finding, thus greatly minimizing both the effortneeded and the possibility of fraud by people posing as losers of theitem found by the finder.

There is thus provided in accordance with an embodiment of the presentinvention a method for bringing finders of objects into contact withlosers of objects using an interpersonal spacetime interaction system,comprising enabling a user to specify a spacetime event for a found itemwherein a spacetime event is a subset of spacetime, the specification ofwhich includes a spatial portion that corresponds to where an item wasfound and a temporal portion that corresponds to when an item was found,enabling a user to specify a spacetime event for a lost item wherein thespatial portion of the spacetime event corresponds to where an item waslost and a temporal portion that corresponds to when an item was lost,and to provide annotations for the spacetime event, maintaining aspacetime database comprising two types of data objects, loser dataobjects, each loser data object corresponding to a spacetime event for alost item, including a unique identifier for the data object, aspecification of the spacetime event, a designation of an owner of theloser data object, and the annotations for the spacetime event, andfinder data objects, each finder data object corresponding to aspacetime event for a found item, including a specification of thespacetime event, a designation of an owner of the finder data object,and a list of unique identifiers of loser data objects that tracksnotifications of loser data objects, maintaining a user databasecomprising a record for each user, including an electronic address forthe user, querying the spacetime database for matching loser dataobjects, wherein the matching loser data objects comprise at least oneloser data object whose corresponding spacetime event intersects withthe spacetime event of a designated finder data object, eliminating fromthe matching loser data objects those loser data objects whose uniqueidentifiers are already included in the list unique identifiers of loserdata objects of the designated finder data object, electronicallynotifying the owner of the designated finder data object of eachmatching loser data object, and updating the list of unique identifiersof loser data objects of the designated finder data object to includethe unique identifier for each matching loser data object.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention will be more fully understood and appreciated fromthe following detailed description, taken in conjunction with thedrawings in which:

FIG. 1 illustrates an exemplary operating environment in which theinvention may be practiced in accordance with an embodiment of thepresent invention;

FIG. 2 depicts a spacetime event within a three dimensional coordinatesystem, in accordance with an embodiment of the present invention;

FIG. 3 is a simplified block diagram of an interpersonal contact systemthat enables users using mobile devices to identify other users, toindicate their interest in contacting other users and to be put intocontact with other users, in accordance with an embodiment of thepresent invention;

FIG. 4 is a flow diagram that depicts an overall method performed by aninterpersonal contact system that enables users using mobile devices toidentify other users, to indicate their interest in contacting otherusers and to be put into contact with other users, in accordance with anembodiment of the present invention;

FIG. 5 is a simplified block diagram of an interpersonal contact systemthat enables users using network devices to identify other users, toindicate their interest in contacting other users and to be put intocontact with other users, in accordance with an embodiment of thepresent invention;

FIGS. 6A and 6B provide a flow diagram that depicts an overall methodperformed by an interpersonal contact system that enables users usingnetwork devices to specify spacetime events, query a spacetime databasethat stores spacetime objects in order to identify other users, toindicate their interest in contacting other users and to be brought intocontact with other users, in accordance with an embodiment of thepresent invention;

FIGS. 7A and 7B together provide an example user interface that enablean icontact system user to both specify an event in space and time andformulate a query in space and time, in accordance with an embodiment ofthe present invention;

FIG. 8 is an example software architecture of an interpersonal contactsystem server computer, in accordance with an embodiment of the presentinvention; and

FIG. 9 is a simplified block diagram of an example client-serverhardware architecture for implementing an interpersonal contact system,in accordance with an embodiment of the present invention;

FIG. 10 provides an example of the relationship between eventsassociated with lost objects and events associated with found objects ina lost and found application based on a space time interaction system,in accordance with an embodiment of the present invention; and

FIG. 11 provides a flow diagram that describes the processing performedby a lost and found system to identify proximate loser objects andfinder objects and to notify the owner of the finder object, inaccordance with an embodiment of the present invention.

DETAILED DESCRIPTION

The invention will be described more fully hereinafter with reference tothe accompanying drawings, which form a part hereof, and which show, byway of illustration, specific exemplary embodiments by which theinvention may be practiced. This invention may, however, be embodied inmany different forms and should not be construed as limited to theembodiments set forth herein; rather, these embodiments are provided sothat this disclosure will be thorough and complete, and will fullyconvey the scope of the invention to those skilled in the art. Amongother things, the invention may be embodied as methods, processes,systems, business methods, or devices. Accordingly, the presentinvention may take the form of an entirely hardware embodiment, anentirely software embodiment or an embodiment combining software andhardware aspects. The following detailed description is, therefore, notto be taken in a limiting sense.

Aspects of the present invention concern an interpersonal spacetimeinteraction system, referred to herein as ISIS, which enablesindividuals to interact with other individuals as a result of detectionof overlap or proximity, or a number of other relationships inspacetime.

Aspects of the present invention concern an interpersonal contact systemwhich is an application of ISIS, which enables a first person, user1, toidentify a second person, user2, based on user2's location in time andspace, and for user2 to learn of the user1's interest in contactinghim/her and optionally to make contact with user1.

Aspects of the present invention concern a lost and found system, whichis an embodiment of an ISIS, which enables a first person to disclosethe finding of a physical object as a specific spacetime event, and asecond person, to disclose the losing of a physical object as a specificspacetime event, and for the lost and found system to bring the firstand second users into contact.

As used herein the following terms have the meaning given below:

GPS—refers to the Global Positioning System (GPS), a U.S. space-basedradio navigation system that provides reliable positioning, navigation,and timing services to civilian users on a continuous worldwide basis.For Any equipment with a GPS receiver, e.g. a mobile phone or a car, canobtain accurate location and time information anywhere in the world. GPSreceivers typically provide latitude, longitude, altitude and timecoordinates for the device that includes the receiver, such a mobilephone.

Spacetime—refers to any mathematical model that combines space and timeinto a single continuum. Spacetime is used herein as a coordinate systemthat can be used to specify a person or object's location in space andtime. Spacetime is defined as an n+1 dimensional mathematical space,where n of the dimensions are allocated to geographical space and onedimension is allocated to time. In the following discussion, the termspace refers to geographic space. In the most typical case, usedexclusively herein, n=2 and the coordinate system for geographical spaceis that provided by earth GPS coordinates, latitude (LAT) and longitude(LONG). So, a point in earth-GPS spacetime is a triplet of numbers(x,y,t) where x and y are GPS coordinates and t is a moment in time,expressed, say, as the number of seconds (positive or negative) thathave elapsed since the first second of year 0 in the common Gregoriancalendar. Also common is the case where n=3, earth-GPS spacetime isexpressed as (x,y,z,t) where x,y,z are also provided by GPS.

Spacetime event, or simply event—refers to an arbitrary subset ofspacetime. Typical examples include a parallelepiped and a cylinder in3-dimensional spacetime. Such a subset contains all the points within acertain square or circle in space, say a city block, and within acertain time interval, e.g., between 5 and 6 pm on Friday, Aug. 21,2009. And the time component may be referred to as its temporalcomponent. The term spacetime event may refer to a specification of asubset of spacetime as well as to the subset of spacetime itself.Likewise the term spatial (temporal) component may refer to thespecification of the spatial (temporal) component of a subset ofspacetime as well as the spatial (temporal) component of the subset ofspacetime itself. Another example of a spacetime event is a curved tubein spacetime. Such a shape could be used, for example, to define themovements of an individual travelling down a street. The individual maybe equipped with a mobile device that includes a GPS transmitter thatperiodically transmits its location within a certain degree of accuracy.Then, as the person moves about within a certain time period, its set ofreported spacetime points can be joined by interpolation and expanded toa spatial radius, say 50 feet, around the individual, thus yielding acurved tube.

Spacetime object, or simply object—refers to a spacetime event that isannotated with information such as inter alia a title, owner name orunique identifier, image, textual note. Typically an object is a dataobject that is stored in a database. Every spacetime object has an eventcomponent.

Intersection—means that two events have one or more spacetime points incommon. The term intersection can also be applied to objects, meaningthat the event components of the two objects intersect.

Interpersonal contact system, also referred to as “icontactsystem”—means a system that enables persons to identify other personsbased on criteria including their mutual location in spacetime, toindicate their interest in contacting specific persons, or to contactpersons that have indicated an interest in being contacted or to expressa willingness to be contacted.

Proximity—two events are said to be in proximity when they satisfy arelationship indicating a specified degree of closeness. Typically, eachISIS embodiment specifies the proximity relationship in a way thatuniquely fits the embodiment. As an example, intersection might be usedto determine proximity in some embodiments. A specific proximityrelationship is defined hereinbelow for the icontact system.

User—means a person that uses a network device or mobile device toaccess or use an ISIS, including the interpersonal contact system andlost and found system embodiments as described hereinbelow. A user usesa web application or a web browser such as Mozilla Firefox or MicrosoftInternet Explorer running on a client computer or a mobile device thatprovides access to websites. Examples of mobile devices that run webapplications and that provide web access include the Apple iPhoneprovided by Apple Computer of Cupertino Calif., the Blackberry providedby Research in Motion of Waterloo, Ontario, and the Treo provided byPalm. Inc. of Sunnyvale, Calif. Unless otherwise specified, the termuser as used herein refers to both the individual and their personalcomputer or mobile device, i.e. typically the user's computer or mobiledevice is not referred to separately.

Exemplary Operating Environment

Now reference is made to FIG. 1, which shows an exemplary operatingenvironment in which the invention may be practiced. Not all thecomponents may be required to practice the invention, and variations inthe arrangement and type of the components may be made without departingfrom the spirit or scope of the invention. As depicted in FIG. 1, system100 includes a network 105 that includes one or more interconnectedlocal area networks (“LANs”) and wide area networks (“WANs”), a wirelessnetwork 110, a network device 115, four mobile devices 120-123, and aserver computer 125. Network device 115 and mobile devices 120-123 areclient devices that communicate with server computer 125. Client devicesmay also communicate among themselves using peer-to-peer networking orusing a near field communications system.

Network 105 connects server computer 125 to other computing devices,including, to network device 115, and through wireless network 110 tomobile devices 120-123. Also, network 105 can include the Internet inaddition to local area networks (LANs), wide area networks (WANs),direct connections, such as through a universal serial bus (USB) port,other forms of computer-readable media, or any combination thereof. Inessence, network 105 includes any communication method by whichinformation may travel between server computer 125, network device 115,and mobile devices 120-123 and with other computing devices as well.

Wireless network 110 is configured in part to couple mobile devices120-123 with network 105. Wireless network 110 may include any of avariety of wireless sub-networks to connect mobile devices 120-123.

Network device 115 may include virtually any computing device capable ofcommunicating over a network to send and receive information. In thiscontext network device 115 refers to devices that typically connectusing a wired or wireless communications medium such as desktop personalcomputers, laptop personal computers, multiprocessor systems,microprocessor-based or programmable consumer electronics, network PCs,and network appliances.

Generally, mobile devices 120-123 may include any portable computingdevice capable of receiving and sending a message over a network such asnetwork 105 and wireless network 110. Mobile devices 120-123 includecellular telephones, smart phones, personal digital assistants (PDAs),handheld computers, digital cameras, laptop computers, wearablecomputers, tablet computers, media players, and video game consoles.Mobile devices 120-123 typically range widely in terms of capabilitiesand features. For example, a mobile telephone may have a numeric keypadand a few lines of monochrome LCD display on which only text may bedisplayed. In another example, a web-enabled mobile device may have analphanumeric keypad and a LCD display capable of displaying full colorpresentations, digital photos, word processing documents, email messagesand web pages.

Mobile devices 120-123 typically include a web browser application thatis configured to receive and to send web pages, web-based messages, andother web-based communications. The web browser application may beconfigured to display and browse web pages and receive and display avariety of media including photos, music, graphics, and text. Mobiledevices 120-123 are typically capable of running mobile applicationsthat send and receive content across wireless network 110. Mobileapplications may be capable of receiving, sending, creating, and editingtext, photos, audio and music, graphics and other digital media files.The mobile application may further provide information that identifiesitself, including a type, capability, and name. Mobile devices 120-123may uniquely identify themselves through any of a variety of mechanisms,including a phone number, Mobile Identification Number (MIN), anelectronic serial number (ESN), or other mobile device identifier.

Some mobile devices 120-123 are capable of communicating with externaldevices in close proximity using near field communications technologiessuch as, infrared, and Bluetooth.

Further, some mobile devices 120-123 include a geopositioning mechanismsuch as a GPS transceiver that can determine the physical coordinates ofmobile devices 120-123 relative to the surface of the Earth. It isunderstood that the GPS transceiver may determine a physical locationwithin millimeters in some cases and may be less precise, such as within5-10 meters or even greater distances, in other cases.

Mobile devices 120-123 and network device 115 may be configured toinclude an application that enables a user to log into a customeraccount that may be managed by another computing device, such as servercomputer 125. Such customer account may enable the user to, for example,search for, view and retrieve information. However, participation inthese activities may not require the user to log into a customeraccount.

Server computer 125 may include any computing device capable ofconnecting to network 105. Further, server computer 125 enables one ormore server applications to communicate with clients and/or other serverapplications operating on other computing devices. Server computer 125applications include but are not limited to database management systems,Web server, digital asset management (DAM), e-commerce, socialnetworking, interpersonal contact, and lost and found.

Furthermore, although FIG. 1 illustrates server computer 125 as a singlecomputing device, the invention is not so limited. For example, one ormore functions or applications of server computer 125 may be distributedacross one or more other network devices without departing from thespirit and scope of the invention.

Interpersonal Spacetime Interaction System (ISIS)

The present invention exploits the concept of a spacetime event toconstruct an interpersonal spacetime interaction system, also referredto simply as an ISIS.

Reference is now made to FIG. 2, which depicts a spacetime event withina three dimensional coordinate system. In the example depicted in FIG.2, a spacetime event 210 is represented as a parallelepiped usinglatitude, longitude and time as the principal axes. A square 220represents the approximate location of a person or object in space wherethe reported location of the person or object is at the center of thesquare. A side 230, defines a square in the latitude-longitude planearound a location defined by the point (x, y). A time interval, Δt 240,defines a time interval centered around the time, Δt, in the time axis.For example, if the time 10:00 is specified with a Δt of ten minutes,then the spacetime event lasts from 9:55 to 10:05.

An ISIS refers to a system that performs at least the followingfunctions:

-   -   1. A user using a mobile device or a network device may specify        a spacetime event and optionally provide information, referred        to as annotations, related to the spacetime event.        Alternatively, the mobile device or network device acting on        behalf of the user can specify the spacetime event and provide        annotations. These annotated spacetime events are called        spacetime objects, data objects, or simply objects.    -   2. An ISIS creates, stores, manages and retrieves spacetime        objects, each of which includes a spacetime event. Moreover,        each object is owned by an ISIS user. Further, an object        typically includes annotations, also referred to as fields or        properties, which provide additional information about the        object owner and/or event.    -   3. An ISIS retrieves objects in response to queries. Queries are        typically based on operations involving the event components of        spacetime objects including inter alia intersection and        proximity. Queries are subject to privacy constraints        established by the owner of an object. Queries may also be based        on values of annotation fields or keyword searches of annotation        text fields.    -   4. An ISIS system offers methods to bring owners of spacetime        objects into contact.

There are many methods by which an ISIS may enable a user to specify anevent. In a first method, events can be specified on behalf of a user bya mobile or network device, for example a GPS-enabled mobile device. Inone embodiment, the mobile device runs an ISIS mobile application thatreports the user's approximate location and the time at regularintervals to the ISIS. In another embodiment, the ISIS mobileapplication reports the user's approximate location and the time to theISIS only when requested by the user to do so.

A second method for specifying an event is to use an online map service,such as Google Maps or the MapQuest mapping service to manually enterthe spatial component of an event using a web browser. As describedbelow with reference to FIG. 7A, in one embodiment a user selects apoint on a map provided by the online map service to denote the centerof the spatial component. The system then defines a square centered atthis point using a default side length. The user may then, optionally,modify this spatial component within certain system-set limits.Additionally, the user also specifies a time interval T (using acalendar to determine the day and two time sliders to specify aninterval start and stop time) to specify the temporal component of aspacetime event. Since an event can be an arbitrary subset of spacetime,the user can repeat this process multiple times in order to signify asingle event, as will be described in further detail below withreference to a lost-and-found application of ISIS.

Spacetime objects managed and stored using an ISIS may includeannotation, i.e. additional properties or information. Any type ofannotation can be included, as long as that annotation can be stored inelectronic form in a database. Example data types that can be includedas annotations include inter alia digital images, movies, sounds, textand properties such as a privacy flag and user identifier. It may beappreciated by one skilled in the art that the specific set ofannotations associated with a spacetime event will differ for eachembodiment of an ISIS. Table 1 below provides an example of an objectused in the icontact system embodiment described below with reference toFIGS. 3-7.

TABLE 1 Database Fields For A Spacetime Object Name Of Field DescriptionObject_id Unique identifier for the spacetime object. Used as key toaccess database information about the spacetime object. Owner_id Useridentifier (user id) of the owner of the object. May be a user name or aunique identifier. Privacy A flag that indicates if the privacy statusof the object, typical settings are Public or Private. Top Left GPSLatitude of top left corner, used to the spatial component LAT of anevent. Top Left GPS Longitude of top left corner, used to define theLONG spatial component of an event.. Bottom GPS Latitude of bottom rightcorner, used to define the Right spatial component of an event. LATBottom GPS Longitude of bottom right corner, used to define the Rightspatial component of an event. LONG Start Time Start time of the event,in number of seconds since 00:00:00 GMT, Year 0AD. End Time End time ofthe event, in number of seconds since 00:00:00 GMT, 0AD. Title Usersupplied title for the event. Note Free text note. Person- Digital imageassociated with the event; for example, a photo al_Photo of the owner ofthe spacetime object.

Database queries are used to access objects stored in the ISIS system.Typically, a query includes a specification of a subset of spacetime(i.e., an event), such as a parallelepiped or cylinder, along with a(potentially empty) set of constraints regarding the annotationinformation. In response to a query, Q, an ISIS will respond with asubset of spacetime objects stored and managed by ISIS whose eventcomponent, i.e. the part of the object that defines the spacetime event,has a specified relationship with the subset of spacetime specified inthe spacetime event included in query, Q and whose annotated informationsatisfy any constraints specified by Q. An example of a specifiedevent-relationship is having a non-empty intersection with Q. In oneembodiment, such queries are made using the Structured Query Language(SQL) extended to include spatial extensions in support of geographicalinformation system (GIS) applications, as is discussed in further detailwith reference to FIG. 8. An R-tree data structure, used for spatialaccess methods such as indexing the (X, Y) coordinates of geographicaldata, is used to index the event component of stored spacetime objects.Once the spacetime objects are stored using an R-tree data structure,the spatial extensions to SQL are used to perform common spatial queriessuch as intersection, containment, and nearest-neighbor. A commonreal-world usage for an R-tree might be: “Find all museums within 2kilometers of my current location”. In the context of an ISIS a typicalusage, for a query, Q, would be to find all spacetime objects whosespatial components intersect with the event component of Q.

In most cases, a simple query interface based on an online map serviceis desirable to enable use with little or no training to specify thespatial component of a query. Also, in addition to specifying a subsetof spacetime, a query can include constraints on other properties orannotation fields in an object, such as the object_id or owner_id fieldsin Table 1 above.

The Icontact System—An ISIS Embodiment

An interpersonal contact (icontact) system that enables persons toidentify other persons, to indicate their interest in contacting otherpersons and to contact other persons is an embodiment of an ISIS. Threeembodiments of an icontact system are described with reference to FIGS.3-7. In the first embodiment, users use mobile devices, such as mobiledevices 120-123 to communicate with an icontact server. In the secondembodiment, users use network devices such as network device 115 tocommunicate with an icontact server. The third embodiment is a hybridthat incorporates the capabilities of the first two embodiments.

Icontact System—Mobile Device Embodiment

Reference is now made to FIG. 3, which is a simplified block diagram ofan interpersonal contact (icontact) system that enables persons toidentify other persons, to indicate their interest in contacting otherpersons and to contact other persons, in accordance with an embodimentof the present invention. Icontact system 300, depicted in FIG. 3,includes two users, user1 310 and user2 330. User1 310 uses a user1mobile device 320 and user2 330 uses a user2 mobile device 340. Bothuser1 mobile device 320 and user2 mobile device 340 are examples ofmobile devices 120-123.

Also, both user1 mobile device 320 and user2 mobile device 340communicate with an icontact server 350, which is an embodiment ofserver computer 125, across a wireless network such as wireless network110 which is connected to a network such as network 105. Further, eitheror both of user1 mobile device 320 and user2 mobile device 340 may haveGPS receiving capability thus enabling it to obtain spatial locationcoordinates and the current time.

Icontact server 350 is a server computer system that enables users,including user1 310 and user2 330, to register with icontact server 350and to derive mobile services from icontact server 350.

Further, both user1 mobile device 320 and user2 mobile device 340 run anapplication, henceforth referred to as an “icontact mobile application”.In one embodiment, the icontact mobile application is a web application,provided by icontact server 350, that runs in a web browser in user1mobile device 320 and/or user2 mobile device 340. In another embodiment,the icontact mobile application is a “native application”, that is itruns natively on the mobile device, user1 mobile device 320 and/or user2mobile device 340, using the services of the mobile operating systemnative to the device such as Android from Google of Mountain View,Calif., the iPhone operating system from Apple Computer of Cupertino,Calif. and the Pre from Palm Inc. of Sunnyvale, Calif. Further, theicontact mobile application is designed to run on most commerciallyavailable mobile devices.

User1 mobile device 320 and user2 mobile device 340 may advertise theirproximity to each other, discover their proximity to each other, andsend and receive data messages to each other using a proximity-basedmethod. One such method for discovering referred to as “GPS-enableddiscovery”, each mobile device either periodically, or at the request ofits owner, informs icontact server 350 of its own current time andlocation. Then, icontact server 350 determines which mobile devices arein spacetime proximity to each other.

Therefore, if, for example, user1 mobile device 320 sends a messageindicating the location of user1 310 to icontact server 350, icontactserver 350 can determine which other users are currently within aspecified radius, for example 100 meters, from user1 mobile device 320and send a message to each of them containing information such as aphoto and name of user1 310. It may be appreciated by one skilled in theart, that when GPS-enabled discovery is used, no direct,device-to-device, communication is required between user1 mobile device320 and user2 mobile device 340.

Now reference is made to FIG. 4, which is a flow diagram that depicts anoverall method performed by an interpersonal contact system that enablesusers using mobile devices to identify other users, to indicate theirinterest in contacting other users and to be put into contact with otherusers, in accordance with an embodiment of the present invention. Themethod depicted in FIG. 4 is symmetric with respect to user1 310 anduser2 330, through step 435A and step 435B, that is both user1 310 anduser2 330 perform the same method at each step. Thus, at step 405A user1310 registers with icontact server 350. Similarly at step 405B user2 330registers with icontact server 350. Accordingly, in the followingdiscussion, only the steps pertaining to user1 310 and user1 mobiledevice 320, i.e. steps 405A-435A, will be described. It may beunderstood that steps 405B-435B will be performed identically by user2330 using user2 mobile device 340. Moreover, while the actions performedby user1 310 and user2 330 are identical they do not need to beperformed synchronously; each user's actions are independent of theother in terms of their timing.

At step 405A, user1 310 registers with icontact server 350. User1 310initiates registration by selecting a “register” control using theicontact mobile application that runs in user1 mobile device 320. Theicontact mobile application prompts user1 310 to provide personalinformation such as name, date of birth, gender and interests. User1 310may provide this information at his/her option. Then the icontact mobileapplication prompts user1 310 to select a personal photo and anelectronic address such as an email address, text messaging address orsome other form of electronic contact such as a link to a profile from asocial networking service, as will be discussed later. Only a personalphoto and electronic contact means are required. All other informationrequested of the user during registration is optional for the user.Typically the personal photo is a “head shot,” i.e. a photo of aperson's head, face forward, which visually identifies him/her. Forexample, user1 310 may have taken his/her personal photo using a digitalcamera feature of user1 mobile device 320 or may have taken it using aseparate digital camera and then uploaded it to user mobile device 320.After user1 310 provides any required personal information and selects apersonal photo, user1 mobile device 320 uploads the personal informationand the personal photo to icontact server 350 which stores theinformation in a user account record.

At step 410A user1 310 enables, or launches, the icontact mobileapplication that runs on user1 mobile device 320. Enabling the icontactmobile application means that the icontact mobile application running onthe user1 mobile device 320 begins operation. User1 310 may disable, orhaft, the icontact application at any time.

At step 415A user1 mobile device 320 commences to periodically transmita beacon message to icontact server 350 indicating its location. Inanother embodiment, user1 mobile device 320 sends a beacon message onlywhen explicitly requested to do so by user1 310. The beacon messageincludes an identifier that uniquely identifies user1 320. In oneembodiment, the beacon message consists of pseudorandom string, referredto as a handle, that uniquely identifies user1 310. In one embodiment ahandle is a 128 bit pseudorandom string that changes every few hours.The beacon message also includes the time at which it is sent. In oneembodiment, user1 mobile device 320 is equipped with a GPS receiver andthe beacon message includes its GPS coordinates and GPS time at the timethat it sends the beacon message.

The beacon message is sent to icontact server 350 which then forwardsthe beacon message to the mobile devices of users within a defineddistance from user1 mobile device 320. Any other user's mobile devicethat is similarly equipped with the icontact mobile application mayreceive the beacon message.

At step 420A user1 mobile device 320 receives beacon messages thatcorrespond to other users in the vicinity. User1 mobile device 320stores each beacon message it receives along with the date/time thebeacon message was received and the GPS coordinates of the location ofuser1 mobile device 320 when it received the beacon message, if suchinformation is available. If user1 mobile device 320 is not equippedwith a GPS receiver then it will not store the GPS coordinates. It maybe appreciated that as user1 310 travels around during the day he/shemay come into proximity with many icontact users and thus user1 mobiledevice 320 may receive and store many beacon messages.

At step 425A user1 mobile device 320 obtains personal photos fromicontact server 350 for each of the users identified by the user handlesincluded in the beacon messages that user1 mobile device 320 hasreceived. User1 mobile device 320 may download said personal photos as abackground task such that they are available when, at step 430A, user1310 chooses to review them. Alternatively, they may be downloaded onlywhen user1 310 explicitly indicates that he/she wishes to reviewpersonal photos. It may be appreciated by one skilled in the art thatbroadcasting only a user handle, rather than a user handle and apersonal photo, enhances security and reduces both the power and storagedemands for user1 mobile device 320 which are important objectives formobile applications. In another embodiment, the beacon message mayinclude both a user handle and a personal photo thus eliminating theneed for step 425A. In one embodiment, user1 mobile device 320 performsstep 425A by sending a request message across the wireless network toicontact server 350. The request message includes a list of user handlesthat have been received and stored by user1 mobile device 320 since thelast time it sent a request message. In turn, icontact server 350 sendsthe icontact mobile application running in user1 mobile device 320 apersonal photo for each user indicated in the request message.

At step 430A user1 310, at his/her convenience, reviews the personalphotos using the icontact mobile application running in user1 mobiledevice 320. The icontact mobile application may display the date/timeand, if available, the GPS coordinates associated with each photo. Theicontact mobile application enables user1 310 to select a personalphoto, discard a personal photo or take no action. If user1 310 discardsa personal photo the personal photo and the corresponding beacon messageare deleted from user1 mobile device 320. If user1 310 takes no actionthen the photo and the corresponding beacon message remain in user1mobile device 320 and can be subsequently reviewed again.

Personal photos selected by user1 in the previous step are processed atstep 435A where user1 mobile device 320 sends a selection message toicontact server 350 that identifies any personal photos selected byuser1 310. The message includes the user handle corresponding to eachpersonal photo selected by user1 310.

At step 440 icontact server 350 reviews the selection message receivedfrom user1 mobile device 320 and for each user selected by user1 310determines whether the selected user similarly selected a photocorresponding to user1 310. In other words, for each user 2 330 listedin the selection message, icontact server 350 determines whether it hasalso received a selection message from user 2 330 that identifies user1310. If so, then at step 445 icontact server 350 provides a connectionbetween user1 310 and user2 330. In one embodiment, providing aconnection means providing user1 310 with contact information for user2330 and providing user2 330 with contact information for user1 310. Therespective users may use the contact information as they wish, e.g. theymay simply store the information or one user may choose to contact theother. In another embodiment, providing a connection means that icontactserver 350 establishes a private communications channel, e.g. a voicecall, a chat connection, or the ability to exchange email via icontactserver 350, enabling user1 310 and user2 330 to communicate with eachother without revealing their contact information.

If at step 440, icontact server 350 determines that user1 310 selected apersonal photo corresponding to user2 330 but user2 330 has not selecteduser1 310 then, in one embodiment, at step 450 icontact server 350 takesno action relative to this selection by user1 310. In anotherembodiment, at step 450, icontact server 350 notifies user2 330 that“someone is interested” and enables user2 330 to take appropriateaction, to find out who that person is. In another embodiment, at step450, icontact server notifies user2 330 by displaying the photo of user1and offering user2 330 the possibility of selecting or contacting user1310. In general, the action performed by icontact server 350 at step 450can vary to reflect privacy preferences that user1 310 and user2 330 mayestablish using the icontact mobile application.

Icontact System—Network Device Embodiment

The mobile devices embodiment of the subject invention required thateach user of icontact system 300 use a mobile device running theicontact mobile application. However, there are cases where this may notbe practical, for example when a user is not carrying his/her mobiledevice, or when a potential user does not have in his/her possession amobile device with the icontact mobile application installed. Thus, anetwork device embodiment of spacetime interaction system, referred toas icontact system 500, requires only that a user, at some point intime, have access to a network device such as network device 115 that isconnected to a network such as network 105.

Now reference is made to FIG. 5, which is a simplified block diagram ofan interpersonal contact system that enables users using personalcomputers to identify other users, to indicate their interest incontacting other users and to be put into contact with other users, inaccordance with an embodiment of the present invention. Shown in FIG. 5are two users, user1 310 and user2 330. It may be noted that user1 310and user2 330 may be the same users as depicted in FIG. 3 and aretherefore are referred to identically. In this embodiment, user1 310uses a user1 network device 520 and user2 330 uses a user2 networkdevice 540. Both user1 network device 520 and user2 network device 540communicate with icontact server 350 across a network. Icontact server350 interoperates with mobile devices such as user1 mobile device 320and user2 mobile device 340 by performing the functions and methodsassociated with the first embodiment of the subject invention asdescribed with respect to FIGS. 3-4 and interoperates with networkdevices such as user1 network device 520 and user2 network device 540 byperforming the functions and methods associated with the secondembodiment of the subject invention as described below, with respect toFIGS. 5-7.

Further, both user1 network device 520 and user2 network device 540 runa web application, referred to as the “icontact web application”.Typically, the icontact web application runs in a web browser such asMicrosoft Internet Explorer from the Microsoft Corp. of Redmond, Wash.or Firefox from the Mozilla Foundation of Mountain View, Calif. Itcommunicates with icontact server 350 when user1 310 or user2 330navigates to an icontact website, i.e. a website provided by icontactserver 350. In this regard, in icontact system 500 user1 310 can use thesame methods using user1 mobile device 320 running a web browser ashe/she would using a web browser running in network device 520 andsimilarly user2 330 can use the same methods using user2 mobile device340 running a web browser as he/she would using a web browser running innetwork device 540. Another way of putting this is that a mobile devicerunning a web browser has the same client relationship with icontactserver 350 as does a web browser running on a network device. Aprincipal difference is that since mobile devices typically have smallerscreens, the display of the relevant information in the mobile devicemight be tuned to the specific characteristics of the device, e.g. byusing smaller icons.

Now reference is made to FIGS. 6A and 6B, which together provide a flowdiagram that depicts an overall method performed by an interpersonalcontact system that enables users using network devices to specifyspacetime events, query a spacetime database that stores spacetimeobjects in order to identify other users, to indicate their interest incontacting other users and to be brought into contact with other users,in accordance with an embodiment of the present invention. FIGS. 6A and6B illustrate three methods or processes, a process for specifying aspacetime event 600 and a process for querying a spacetime database 640and a process for bringing two users into contact 670.

Process for specifying a spacetime event 600 describes how a user, user1310 in this example, causes both a spacetime event and a spacetimeobject to be created and stored.

At step 605 user1 310 navigates to the icontact website. If user1 310has not already done so, he/she registers with icontact server 350 inorder to proceed. To accomplish this, user1 310 navigates using his/herweb browser to the icontact website and selects a “register” controlusing the icontact web application. The icontact web application promptsuser1 310 to provide personal information such as name, date of birth,gender and interests. User1 310 may provide this information at his/heroption. The icontact web application further prompts user1 310 to selecta personal photo and an email address, or some other form of electroniccontact such as a link to a profile from a social networking service, aswill be discussed later. Only a personal photo and electronic contactmeans are required. All other information requested of the user duringregistration is optional for the user. After user1 310 completesregistration, icontact server 350 stores the information in a useraccount record.

At step 610 user1 310 specifies a spacetime event, by specifying ageographic location and a time interval, and adds annotationinformation. The geographic location and time typically represent a timeand place where user1 310 is currently, plans to be, or was at somepoint in the past. In this embodiment, annotations include title, textmessage, and a privacy setting which can be set to a value thatindicates that the event and its corresponding spacetime object ispublic or private. In one embodiment, privacy settings limit other usersability to retrieve and view spacetime events owned by user1 310. Themethod for specifying location, time and annotations is described infurther detail below with reference to FIGS. 7A and 7B.

At step 615 icontact server 350 uses the information provided by user 1310 via the user interfaces given in FIGS. 7A and 7B to create aspacetime object, O, that includes spacetime event E and anyuser-supplied annotations and then stores spacetime object O in thespacetime database. The spacetime database is further described withreference to FIGS. 8 and 9. To define the spatial component of event E,icontact server 350 establishes a square area centered at the locationspecified by user 1 310. In one embodiment, the length of the side ofthe square is a default value specified by icontact server 350. Inanother embodiment, this side can be adjusted by the user, withinsystem-set bounds. The temporal component of E is defined by the dateand start time and stop time specified by user 1 310.

Process for querying a spacetime database 640 describes how a icontactserver 350 performs a query, initiated by a user, in this case user2330. At step 645 user2 330 navigates to the icontact website. If user2330 has not already done so, he/she registers with icontact server 350,using the procedure described with respect to step 605.

At step 650 user2 330 initiates a query by specifying information thatwill subsequently be used by icontact server 350 to formulate a query.The information specified includes an area in space, a date and a timeinterval. The area in space and the time interval typically represent aplace and time where user2 330 currently is, plans to be, or was at somepoint in the past. It may be appreciated by one skilled in the art thatthis general mechanism enables spacetime events to occur at any time inthe past, present or future.

At step 655 icontact server 350 uses the information specified by user2330 to formulate and execute a query and to retrieve information fromthose spacetime objects in the spacetime database that satisfy thequery. At step 660 icontact server 350 provides the retrievedinformation to user2 330 via user2 network device 540.

Process for bringing two users into contact 670 describes one embodimentof a method for bringing two users, user1 310 and user2 330 in thisexample, into contact. In this embodiment, the information retrieved atstep 655 for each spacetime object includes a personal photo of theowner of the event, a specification of the spatial location of thecenter of the corresponding spacetime event, i.e. its x,y coordinates,and the annotations for the spacetime event. At step 675 user2 networkdevice 540 displays a marker for each retrieved spacetime object thatindicates the center of the corresponding event, the personal photo ofthe owner of the object and may include one or more of the annotations.Such a user interface is described in further detail with reference toFIGS. 7A and 7B.

At step 680 user 2 330 reviews the personal photos for each owner of aretrieved spacetime object and selects one or more personal photos. Inthis example, user2 330 selects the personal photo of user1 310 whohappens to be the owner of one of the retrieved spacetime objects. Byselecting the personal photo of user1 310, user2 330 indicates thathe/she wishes to obtain more information about or contact user1 310.

At step 685 icontact server 350 makes a determination as to whetheruser1 310 had previously selected a photo corresponding to user2 330. Ifso, then at step 690, icontact server 350 provides a connection betweenuser1 310 and user2 330. In one embodiment, providing a connectionconsists of providing user1 310 with contact information for user2 330and providing user2 330 with contact information for user1 310. Therespective users may use the contact information as they wish, e.g. theymay simply store the information or one user may choose to contact theother. In another embodiment, if user1 310 and user2 330 each select theother's photo then icontact server 350 establishes a privatecommunications channel, e.g. a voice call, a chat connection, or theability to exchange email via icontact server 350, thus enabling user1310 and user2 330 to communicate with each other without revealing theiridentity.

If at step 685, icontact server 350 determines that user1 310 did notpreviously select a photo corresponding to user2 330 then at step 695icontact server 350 takes no action relative to this selection by user2330. In another embodiment, at step 645, icontact server might notifyuser1 310 that “someone is interested” and enable user1 310 to takeappropriate action.

It may be appreciated by those skilled in the art that there are manypotential variations of the methods described with reference to FIG. 4and FIG. 6. For example, in one embodiment, user1 310 may be able tospecify to icontact server 350 that it is permissible to provide his/hercontact information to user2 330 regardless of whether user1 selectsuser2 330. This might be useful, for example, as a way for user1 310 toprovide contact information attendees of a professional convention.

In another embodiment, user1 310 may be able to specify to icontactserver 350 that he/she wishes to receive contact information for user2330 in the case that they each select each other's photo, but thaticontact server 350 may not provide user1 310 contact information touser2 330, i.e. that user1 310 may receive contact information for user2330 but not vice versa. This might be useful in a case where user1 310wishes to maintain privacy but also wishes to allow for contact withuser2 330.

Icontact System—Retrieving Objects

An ISIS enables users to access or retrieve objects belonging to otherusers. For example, the icontact web application enables users to queryand retrieve information from spacetime objects in a spacetime database,described below with reference to FIGS. 8 and 9, using a user interfacedescribed below with reference to FIG. 7A. Essentially the userinterface enables a user to formulate a query by interactivelyspecifying a parallelepiped in spacetime and it is this parallelepipedthat acts as the user-specified query. (The paralellepiped is defined bythe parallelogram in space and a time interval.) The icontact systemdisplays a representation of each object retrieved as a result of query,Q. The choice of objects retrieved for a query, Q, is performedaccording to specified rules. An example set of rules that take intoaccount the privacy setting discussed with reference to FIG. 7B aredescribed below. For purposes of brevity, in the following discussionquery Q refers to the event component of a query, Q, and event O refersto the event component of an object O.

Public Objects: If a stored object, O, has been declared to be public,for example when the user selects the Public privacy setting depicted inFIG. 7B, then O is retrieved when a query Q is issued by a user, U, ifand only if event O satisfies both of the following conditions:

1. Event O's spatial center lies inside the spatial component of queryQ.

2. Event O's time interval intersects the temporal component of query Q.

The two requirements above, taken in conjunction, define the concept ofproximity between an event specified in a query and the event componentof a stored object for icontact system 300 and icontact system 500. Thisdefinition of proximity is conceptually close to that of intersectionbetween events O and Q, yet it is a slightly more stringent requirement,since it is the spatial center of event O, not just any spatial point ofevent O, that must lie inside the spatial component of query Q. Therationale is that the more stringent requirement regarding the spatialdomain makes it possible to display a visual marker at the spatialcenter of the returned object on the map, for each returned object.

Private Objects: If a stored object, O, has been declared to be private,then O is retrieved when a query, Q, is issued as a result of an actionby a user, U if and only if event O satisfies all of the following threeconditions:

1. Event O's spatial center lies inside the spatial component of queryQ.

2. Event O's time interval intersects the time extent of query Q.

3. The user, U, has stored in the system at least one object whosespatial center lies inside the spatial component of event O.

The first two requirements above are identical to those for publicobjects. The last requirement is aimed at maintaining user privacy. Itguarantees to the owner of O that the only icontact users who will learnof the existence of object O are those users who, presumably withoutknowledge of O's existence, have themselves stored an object thatsatisfies the other two criteria, i.e., is proximate to event O. As aresult, by making the spatial component of event O small (and,potentially also the time extent), a user can make it very unlikely thata person will be able to learn of O by accident or by random probing ofspacetime. It may be appreciated that this last requirement isasymmetric. That is, storing an object, O, enables its owner to learn ofan object, P, belonging to another user, while the owner of P will notnecessarily learn of O. As an example, two private objects A, B ofidentical time extent, may be considered such that the spatial componentof A is completely inside B but does not contain the center of B. Inthis case, object B will be visible to the owner of A, but A will not bevisible to the owner of B.

In one embodiment, the results of a query Q may be further refined byfiltering the results using annotation information. For example, a userU can request to retrieve only those objects stored whose title containsa certain keyword.

Now reference is made to FIG. 7A which is an example user interface thatenables an icontact system user to both specify an event in space andtime and formulate a query in space and time, in accordance with anembodiment of the present invention. User interface 700 is a web userinterface provided by an icontact mobile device such as user1 mobiledevice 320 or by icontact server 350 via the icontact website to a userof the icontact web application. In this example, the Google Maps webmap service provides a customized map to a user that enables him/her tonavigate to and select a location and to specify a date and a timeinterval. Visual icons, referred to as markers, represent spacetimeobjects stored by icontact server 350 whose spatial centers lie withinthe visible map and within the specified time interval. In addition theuser can “post” or specify an event that will similarly appear whenother users of icontact system 500 use user interface 700.

Using a pan control 704 the user can pan up, pan down, pan right and panleft within the map. Using a zoom control 706 the user can zoom in andzoom out of the map. A date control 702 enables the user to specify adate either by clicking on a calendar icon and selecting a date or byclicking on a right or left arrow to increment or decrement thedisplayed date by one day. A time interval control 712 provides twosliders that enable the user to specify a time interval.

The user can select a location either by clicking on any point on themap or by entering a “place name”, i.e. the name of a known locationsuch as a museum, park or shop, using a place name control 708. Afterentering a place name the user clicks “Go” to initiate a search. If theplace name is successfully found by the map service, the map servicedisplays a new map in which the location corresponding to the place nameis positioned in the center.

Each time a new map is displayed in response to a user action, includingusing pan control 704, zoom control 706, date control 702 or timeinterval control 712, or searching for a location using place namecontrol 708, a query is initiated by icontact server 350. In effect, thevisible map defines the spatial component of the query while togetherdate control 702 and time interval control 712 define the temporalcomponent of the query. Combined, the spatial and temporal componentsform a parallelepiped in spacetime. In response, icontact server 350 (1)identifies all stored spacetime objects proximate to the event definedin the query, (2) eliminates those spacetime objects that don't meet theprivacy constraints, (3) retrieves information from the remainingobjects, and (4) provides the retrieved information to the icontact webapplication.

In turn, icontact web application displays an updated map and displays amarker 716 for each retrieved spacetime object on the map at the centerof the spatial portion of the spacetime event included in the spacetimeobject. The icontact web application also displays an array of retrievedpersonal photos 710 at the bottom of user interface 700. Array ofretrieved personal photos includes a thumbnail size personal photo forthe owner of each retrieved spacetime object. The user can click on anythumbnail personal photo in array of retrieved personal photos 710 oralternatively on marker 716 to obtain further details about thecorresponding stored object, including text related to the event and/ormore information regarding the depicted individual.

To initiate the creation of a new event, the user clicks a post control714. In response, icontact server provides web interface 750 asdescribed below with reference to FIG. 7B.

Now reference is made to FIG. 7B, which is an example user interfacethat enables an icontact system user to both specify an event in spaceand time and formulate a query in space and time, in accordance with anembodiment of the present invention. User interface 750 is a web userinterface provided by icontact server 350 to a user of the icontact webapplication. User interface 750 essentially adds several items to userinterface 700 in response to a user selecting post control 714 from userinterface 700. To user interface 700, user interface 750 adds a newmarker inside an event locator rectangle 762, a user information box754, a title entry box 752, a wall control 756, a privacy control 758and a post control 760.

A user specifies a new event in the same way he/she specifies a query,i.e. by positioning event locator rectangle 762 within the map,typically using a drag and drop user interface technique, and by usingdate control 702 and time interval control 712 to define the temporalcomponent of the event. Pan control 704 and zoom control 706, and placename control 708 are available to the user, as previously described, toassist in specifying the spatial component of the event.

Title entry box 752 enables the user to enter a descriptive textualtitle for the event. In one embodiment, this is a mandatory field. Thatis, the user must enter a title in order to post the event.

Using a wall control 756, the user can elect to post the object,including event and annotation information to a social networkapplication such as FACEBOOK. Social networks, including FACEBOOK, aredescribed below with reference to the embodiment entitled “IcontactSystem-Integration With Social Networks Embodiment.”

A privacy control 758 enables the user to determine who has the right toview his/her event. In one embodiment the two privacy control settingsare available: Public and Private. The rules that govern which users maysee events declared as public and private are described above in thesection entitled: “Icontact System—Retrieving Objects.” When the userfinishes annotating his/her event, he/she uses a post control 760 topost the event. When the user uses the post control 760 to post theevent, the icontact web application sends a post event message toicontact server 350 that includes the event information, together withthe title, privacy and wall information. In turn, icontact server 350creates and stores a spacetime object for the event. In creating theobject, icontact server 350 adds to the information provided in the postevent message the owner id and potentially other information about theowner of the object, for example his/her email address or personalphoto. Since the dimensions of the square that specifies the spatialcomponent of the event are not defined in user interface 750 icontactserver 350 applies a default setting. In one embodiment, this setting isthe same for all locations on earth. In another embodiment, this settingvaries for different locations. In another embodiment, the user canspecify this setting, up to limits imposed by the system. Alternatively,the user can use post control 760 to cancel the event in which case noobject is created and stored by icontact server 350.

Icontact System—Hybrid Embodiment Encompassing Mobile and NetworkDevices

A hybrid embodiment of the subject invention combines the capabilitiesof the mobile device embodiment and the network device embodiment. Inthe hybrid embodiment, user1 310 may use either a user1 mobile device320 or a user1 network device 520 to obtain services from icontactserver 350. Similarly, in the hybrid embodiment, user2 330 may useeither a user2 mobile device 340 or a user2 network device 540 to obtainservices from icontact server 350.

Enabling both the use of mobile devices and network devices enables manyvariations and user capabilities. For example, in one embodiment, user1mobile device 320 may send a beacon message to icontact server 350periodically to inform icontact server 350 of its location in space andtime of user1 310. User2 330 may have been approximately at the samelocation at approximately the same time at one point during the day asuser1 310 during the day and may use his/her user2 network device 540 topost an event using the method described with reference to FIG. 5 toidentify and connect with user1 310.

In another embodiment, user1 310 may be in a restaurant and see an oldschool friend eating across the room. The two make eye contact butrather than interrupt their meal they choose to connect later usingeither of icontact system 300 or icontact system 500. User1 310 may usethe icontact mobile application running in user1 mobile device 320 toidentify to icontact server 350 the spacetime event during which he/shewas at the restaurant. Then, later, user2 330 may use his/her user2network device 540 to perform the method described with reference toFIG. 5 to identify and connect with his/her school friend user 1 310. Toenable this hybrid embodiment, if user1 mobile device 310 has GPScapability then the icontact mobile application provides a function thatenables user1 310 to cause user1 mobile device 320 to send a beaconmessage to icontact server 350 that causes icontact server 350 tocreate, and store a spacetime object corresponding to the event. Ifuser1 mobile device 320 does not have GPS capability then user1 310 canuse the icontact mobile application to enter a spacetime note thatincludes location and time information and then cause user1 mobiledevice 320 to send the message to icontact server 350, Icontact server350 in turn specifies the spacetime event, and creates and stores acorresponding spacetime object. Further, the icontact mobile applicationmay assist user1 310 by obtaining and providing some or all of theinformation included in the spacetime note such as date and time and thelocation of the nearest cellular phone tower.

Icontact System-Integration with Social Networks Embodiment

In another embodiment of an icontact system, some of the servicesprovided by icontact server 350 in the mobile device embodiment, thenetwork device embodiment and the hybrid embodiment are provided via asocial networking service. A social network service enables communitiesof people to share information about their interests and activities.Typically, social networking services are web-based. In some cases,social network services offer application programming interfaces thatenable applications to be provided by third party developers that usethe services of the social networking service. For example, the thirdparty applications use the web interface and user management services ofthe social networking service. In addition, social networking servicestypically enable their users to include information about themselves ina user profile including personal photos and contact information.

FACEBOOK, of Palo Alto, Calif., is an example of a social networkservice that offers an application programming interface. FACEBOOKoffers some of the features present in the icontact web application. Forexample, a FACEBOOK user must register and typically fills out a profilethat captures personal information about the user. FACEBOOK also enablesa user to upload and store digital photos and even to designate “profilephotos” which are analogous to personal photos. Thus, an icontactapplication for FACEBOOK may replace the icontact web application byproviding the same features as the icontact web application but withinthe FACEBOOK environment. In one embodiment, when a FACEBOOK userlaunches the icontact application for FACEBOOK from their FACEBOOKprofile page the application displays an interactive electronic map thatenables a user to specify a location and enables the user to specify adate and time. Having specified a spacetime location, the icontact forFACEBOOK application computes a spacetime event, annotates it with therelevant user information provided by FACEBOOK, along with annotationssuch as title and text provided by the user and stores the resultingobject in the spacetime database. The icontact for FACEBOOK applicationthen identifies events posted by other users of the icontact forFACEBOOK that are in proximity. The application then proceeds to showthose users' FACEBOOK picture and make it possible to send them amessage, by selecting their FACEBOOK picture. Thus, users “get to seewho has posted nearby” in that for each of the events a user X hasposted, he/she gets to see the FACEBOOK-profile picture of the FACEBOOKusers who have posted events which are nearby, i.e. proximate inspacetime.

Now reference is made to FIG. 8, which is an example softwarearchitecture of an interpersonal contact system server computer, inaccordance with an embodiment of the present invention. Icontact server350 includes a mobile device interface 805, a web interface 810, aspacetime processor 815, and a data storage 820 which includes twodatabases, namely a user database 825, and a spacetime database 830.

Icontact server 350 communicates with user1 mobile device 320 and user2mobile device 340 via a mobile device interface 805. Since theprocessing performed by mobile device interface 805 is identical withrespect to user1 310 and user2 330 only the processing relative to user1310 will be described. Mobile device interface 805 receives beaconmessages from user1 mobile device 320 and sends back photos of otherusers that have posted events in proximity to user1 310. Mobile deviceinterface 805 receives a list of selections made by user1 310 anddetermines which of the corresponding users have also selected user1310. For each user in the selection list that is also selected by user1310, mobile device interface 805 establishes a connection between thetwo users.

Mobile device interface 805 enables user1 310 to register with icontactserver 350. Mobile device interface 805 stores a user account record ina user database 825 for each newly registered user. In one embodiment,the user account record includes contact information including interalia name, address, email address and phone number, one or more personalphotos, and means of payment information such as a credit card numberwith associated details. The user account record may also includepersonal preferences such as which personal photo to display and whichpersonal details to provide in the case of a match.

When mobile device interface 805 receives a beacon message from user1mobile device 320 it uses spacetime processor 815 to specify a spacetimeevent. Mobile device interface 805 then creates a spacetime object thatincludes the event specification, the user id for the object owner, andannotations and then stores the spacetime object in spacetime database830.

Web interface 810 enables user1 310 and user2 330 to obtain servicesfrom icontact server 350. Since the processing performed by webinterface 810 is identical with respect to user1 310 and user2 330 onlythe processing relative to user1 310 will be described. It may beappreciated that user1 310 may also access icontact server 350 using aweb browser running in user1 mobile device 320. Web interface 810enables user1 310 to register with icontact server 350 from a webbrowser running in user1 mobile device 320 or from a web browser runningin user1 network device 520. Web interface 810 stores a user accountrecord in user database 825 for each newly registered user. In oneembodiment, the user account record includes contact informationincluding name, address, email address and phone number, means ofpayment information such as a credit card number with associated detailsand one or more personal photos and a username and password. The useraccount record may also include personal preferences such as which phototo display and which personal details to provide in the case of a match.

Web interface 810 provides a web user interface that enables user1 310to provide location and temporal information necessary to specify aspacetime event and annotations to the event. Web interface 810 usesspacetime processor 815 to specify a spacetime event. Web interface 810then creates a spacetime object that includes the event specification,the owner_id, and annotations and then stores the spacetime object inspacetime database 835. Web interface 810 provides a web user interfacethat enables a user to specify a query that web interface 810 then usesto retrieve information from spacetime objects owned by other users. Webinterface 810 uses spacetime processor 815 to perform the query andreturn spacetime objects stored in spacetime database 835 that meet theconditions of the query. As previously described with reference to FIG.6, web interface 810 then enables user1 310 to review and selectpersonal photos for the owners of the events retrieved by spacetimeprocessor 815.

Spacetime processor 815 performs several functions. It creates andstores spacetime objects that includes the specification of a spacetimeevent, and annotations provided by the owner of the spacetime object. Itadds additional information including inter alia a user id for theobject owner. Additionally, spacetime processor 815 executes queries andreturns information requested for those spacetime objects that meet theconditions of the query.

Data storage 820 creates and manages logical databases using arelational database management system (RDBMS) by storing data ontophysical storage devices. In addition, data storage 820 may includenetwork attached storage (NAS), which is data storage that can beconnected directly to a computer network to provide centralized dataaccess and storage for other network devices. For example, NAS wouldenable multiple servers to directly store and share data. Data storage820 may include cloud storage in which storage resources are provided asa service over the Internet. In particular, data storage 820 providessupport for managing database used for geographical information systems(GIS). It does this by supporting basic operations including an R-Treesearching algorithm as previously discussed. Two RDBMS that provideadequate GIS support to be used for data storage 820 are PostgreSQL,which provides a Generalized Search Tree indexing extension, and MySQLwhich provides spatial extensions. PostgreSQL is an open sourceobject-relational database managed by the PostgreSQL Global DevelopmentGroup. Additional information about PostgreSQL can be found athttp://www.postgresql.org/. MySQL is an open source relational databaseowned by Sun Microsystems of Santa Clara, Calif.

User database 825 creates, stores and retrieves a customer accountrecord for each user in which it stores information captured during userregistration including inter alia name, contact information includingelectronic address, personal photo, and user id.

Spacetime database 830 creates, stores and retrieves spacetime objectsthat include inter alia event information, information about the ownerof the object including inter alia an owner_id, and annotations providedby the owner of the object.

It will be appreciated by those skilled in the art that the systems andmethods of the present invention may be implemented within a variety ofserver-client network architectures. In this regard, reference is nowmade to FIG. 9, which is a simplified block diagram of an exampleclient-server architecture for implementing an interpersonal contactsystem, in accordance with an embodiment of the present invention. Onthe server side, the architecture depicted in FIG. 8 includes one ormore Web application servers 910 managed by load balancers 920,administration servers 930, search servers 940, and two databases, userdatabase 825, and spacetime database 830. Web application servers 930manage user database 825 and history database 830. It may be appreciatedby one skilled in the art that Web application servers 930 also act asWeb servers in that they accept HTTP requests from web browsers andserve them HTTP responses along with optional data contents, whichusually are web pages such as HTML documents and linked objects (images,etc.). All of these server components are subsumed in icontact servercomputer 350.

On the client side, the architecture depicted in FIG. 9 includes user1310 and user1 mobile device 320 connected via wireless network 110 tonetwork 105 and hence icontact server 350 and user1 310 using user1network device 520 and connected via network 105 to icontact server 350.User1 mobile device 320 and user1 network device 520 have one-wayconnections with administration servers 920 through which they receivenotifications. User1 mobile device 320 and user1 network device 520interact with contact server computer 350 via connections with loadbalancers 910 which are two-way connections.

Additional Embodiments

The ability of an ISIS to compute spacetime events and to determine whenindividuals overlap enables a broad range of applications. Otherpotential ISIS embodiments include:

Event-Based Communities Embodiment

An event-based communities embodiment of an ISIS enables users withcommon interests to exchange information regarding events of commoninterest. For example, a user may attend a theater performance and thenuse an event-based community system to create a virtual “bulletin board”regarding that night's performance by placing a bulletin board placemark at the segment of space time corresponding to the performance,naming the bulletin board with an appropriate name, and perhaps postingan opinion or comment about it. Then other attendees can share theirexperience by visiting this point in spacetime, discovering the presenceof the bulletin board and also posting further messages and information.

Lost and Found Embodiment

In an embodiment of an ISIS directed towards improving the efficiencyand likelihood that lost objects will be regained by their owners thereare two categories of users, referred to as losers and finders. A loseris a person who has lost a physical object. A finder is a person who hasfound a physical object. The purpose of the lost and found system is tohelp the finder of an object to come into contact with the loser of theobject.

After losing an object, the loser, L, can use the lost and found systemto create an object stored in ISIS whose event component specifies theapproximate time and location in which L believes that the item waslost. The ability of ISIS to define an event as an arbitrary subset ofspacetime is particularly useful in this embodiment. For example, anevent consisting of a “tube” in spacetime can contain the route that Ltook while walking from location A to location B during which time Llost an object. Alternatively, an event defined by multipleparallelepipeds can represent a handful of locations that L visited inthe course a few hours, during which time L believes that he/she lostthe object.

Lost and Found Embodiment: Losers' ISIS Objects

In one embodiment of a lost and found system, loser, L, can specify anevent as the union of one or more parallelepipeds, where eachparallelepiped is as described with reference to FIG. 2. Typically, thenumber of parallelepipeds is limited to a relatively small number, forexample to 3, to limit the possibility of fraud. The multipleparallelepipeds model lends itself to a very simple user interface. Forexample, a user interface may allow L to select multiple points on amap, each point representing the center of a parallelepiped in which Lbelieves the item may have been lost. In one embodiment the lost andfound system defines parallelepiped of a system-defined size for each ofthe selected points. In another embodiment, the user can select a sideto specify the size of the parallelepipeds, within system-set bounds.

As with events specified in the icontact system, each loser-event L maybe annotated to create a spacetime object. In one embodiment of a lostand found system, annotations may include:

-   -   1. Unique id. A unique id for the loser object.    -   2. Title. A brief textual description of the lost item,        consisting typically of keywords, e.g., black leather wallet.    -   3. Electronic address. An electronic address such as an email        address at which the owner can be reached.    -   4. Lost object description. A textual description of the object.        For example, if L loses a cell phone, this text can contain the        manufacturer, model, color and the name and telephone numbers of        five contacts stored in the phone's address book.        Lost and Found Embodiment: Finders' ISIS Objects

In this embodiment, a finder object, FO, is a line segment in spacetime.Finder object annotations include the finder's electronic address, and alist of unique identifiers for loser data objects that indicate whichloser objects have previously been reported to the finder. Concretely, afinder, F, merely declares a point, P, in spacetime that corresponds towhere and when he/she found the item. A line segment, FE, representingthe event is then created and a corresponding finder object, FO, iscreated by extending the time dimension of P backwards either for asystem defined length of time, say, a week, or for a length of timechosen by F. This extension in time indicates that F is interested inbeing put in touch with people who lost an object in the spatialvicinity of the spatial point P, during the time period corresponding tothe length of the line segment (since it runs in the time dimension),e.g., the week proceeding the moment user F found the object.

After storing object FO into the system, a finder, F, is notified by thesystem of all events associated with loser objects, (LE1, LE2, . . . ),that intersect the line segment, FE. Moreover, the system notifies thefinder, F, of any events that intersect FE that are added to the systemin the following D days, where D is a number of days either set as adefault by the system or selected by F. A notification may be sent to Feach time a new intersecting event is detected, or such notificationscan be batched together into a periodic notification. In either case,the notifications are sent to the electronic address that F hasassociated with FO.

In this embodiment, proximity between an event associated with a loserobject and an event associated with a finder object is defined simply asthe intersection of the two spacetime events. In the lost and foundembodiment all objects are public objects; otherwise put, there is nonotion of public or private objects.

Lost and Found Embodiment: Notifications

When the lost and found system detects an intersection between thespacetime parallelepiped defined by LO and the line segment defined by afinder object, FO, it sends a notification to the owner of FO. In oneembodiment, the notification consists of an email message containing thetitle text for LO and a hyperlink that enables finder, F, to view thecomplete information for LO including the message provided by loser, L.

As a result, Finder, F, can quickly scan any received notifications andonly read the full text of those whose title-text appears promising. Iffor one of those lost objects, F finds it worthwhile to communicate withits owner L, then F can proceed to send L a message, e.g., to ask foradditional details, or to seek a method by which to return the item.

Similarly to the icontact system 500, the lost and found system canenable communications between L and F by acting as a go-between,forwarding messages so that neither party needs to expose their identitybefore they are comfortable to do so, if ever. Indeed, Finder, F, caninform Loser, L, that he/she has left the found item at a police stationor other location so that the two parties never need to come in contactor reveal their identity.

Now reference is made to FIG. 10, which provides an example of therelationship between events associated with loser objects and the eventsassociated with finder objects in a lost and found system based on aspace time interaction system. Lost and found example 1000 includesthree events associated with loser objects, LE1 1010, LE2 1020 and LE31030. A single finder event FE1 1040 is defined. Finder event FE1 1040consists of a line segment which intersects loser event LE3 1030. Inthis example, the owner of finder event FE1 1040 would receive an emailnotification containing the title text from the object associated withloser event LE3 1030 and a hyperlink that enables the owner of theobject associated with finder event FE1 1040 to view the additionalinformation provided by the loser of the object associated with loserevent LE3 1030.

Now reference is made to FIG. 11, which provides a flow diagram thatdescribes the processing performed by a lost and found system toidentify proximate loser objects and finder objects and to notify theowner of the finder object, in accordance with an embodiment of thepresent invention. Finder object process 1100 may be performedperiodically for each finder object, FO(K), to ensure that all potentialmatches between finder objects and loser objects are detected.

At step 1105 the lost and found system initiates finder object process1100 by selecting a finder object, referred to as FO(K). For example,finder object process 1100 might be executed each time that a new finderobject is posted by a user. At step 1110 a spacetime database thatstores all finder objects and loser objects is queried to determine ifthere any stored loser objects that intersect with the eventcorresponding to FO(K), referred to as FE(K). At step 1115, a set ofmatching loser objects is determined by eliminating all loser objectswhose corresponding events were previously determined to intersect withFE(K). This is performed by eliminating from the set of matching loserobjects those loser objects whose unique id is in the list of uniqueidentifiers for loser data objects stored in FO(K).

At step 1120 for each loser object in the set of matching loser objects,the owner of FO(K) is electronically notified of the loser object. Inone embodiment, notification consists of sending an email message orother text message to the owner of FO(K) that includes annotations fromthe loser object, including the title, electronic address, and lostobject description. In this embodiment, the owner of the finder object,FO(K), relies on the text annotation provided by the object loser todetermine if there is a potential match between the lost and foundobjects. The owner of finder object, FO(K), can use the providedelectronic address to contact the owner of the loser object to resolvethe matter.

In another embodiment, notification consists of sending the owner ofFO(K) an electronic message that includes the title annotation from theloser object and a hyperlink that leads a web page that displays thelost object description and enables the owner of FO(K) to send a messageto the owner of the lost object.

At step 1125 the list of unique identifiers for loser data objectsstored in FO(K) is updated to include the list of unique identifiers foreach loser object in the set of matching loser objects.

It may be appreciated by one skilled in the art that the lost and foundsystem based on ISIS offers considerable advantages over otherapproaches. In particular this approach minimizes the chance that falsedeclarations of lost objects will succeed. Moreover, this approachminimizes the effort required on the part of an object loser and anobject finder to participate in the lost and found system.

In reading the above description, persons skilled in the art willrealize that there are many apparent variations that can be applied tothe methods and systems described.

The invention claimed is:
 1. A computer-implemented method ofestablishing a connection between two individuals using an interpersonalspacetime interaction system, comprising: receiving from an electronicdevice of a first user a specified spacetime event and an annotation forthe specified spacetime event, the spacetime event comprising a subsetof spacetime, a specification including a spatial portion and a temporalportion, each spacetime event corresponding to a three-dimensionalcoordinate system in which the spatial portion of the spacetime event isa two-dimensional geometric area corresponding to an area on the surfaceof the earth and the temporal portion is a time interval; storing thereceived spacetime event and the annotation for the spacetime event in aspacetime database as a data object, the data object stored as a privateevent of the first user, the first user comprising the owner of the dataobject; maintaining the spacetime database comprised of a plurality ofdata objects, each data object corresponding to a spacetime event and anannotation for the spacetime event in the spacetime database and acorresponding user as the owner for that data object; receiving a queryfor the spacetime database, the query including a specification of adesired spacetime event, said query being initiated by a second user;retrieving every data object in the spacetime database that meets bothof the following two conditions: (a) the spacetime event of the dataobject to be retrieved is proximate to the desired spacetime event and(b) there exists in the database at least one data object that is ownedby the second user such that the spatial portion of the data objectowned by the second user contains the center of the spatial portion ofthe data object to be retrieved; and establishing, in response to theretrieved data objects, a communication channel between the first andthe second user.
 2. The method of claim 1 wherein, each spacetime eventcorresponds to one or more parallelepipeds or one or more cylinders inthe three-dimensional coordinate system in which two of the dimensionsare spatial and refer to points on the surface of the earth and thethird dimension is time.
 3. The method of claim 1, wherein a spacetimeevent is proximate to the desired spacetime event if the center of itsspatial portion lies inside the geometric area of the spatial portion ofthe desired spacetime event, and the time interval of the temporalportion of the spacetime event intersects with the temporal portion ofthe desired spacetime event.
 4. The method of claim 1, wherein thetwo-dimensional geometric area is a rectangular area.
 5. The method ofclaim 1, wherein receiving the specified spacetime event comprisesreceiving an indication from the first user of the center of the spatialportion of the spacetime event on an interactive map.
 6. The method ofclaim 1, wherein receiving the specified spacetime event comprisesreceiving a selection of a date, a start time of the time interval and astop time of the time interval to specify the temporal portion of thespacetime event.
 7. The method of claim 1, wherein the spatial portionof the desired spacetime event corresponds to a visible portion of aninteractive map.
 8. The method of claim 1 further comprising:maintaining a user database comprising records for users, each recordincluding an electronic address and a personal photo; retrieving fromthe user database personal photos of the owners of those data objects inthe spacetime database whose corresponding spacetime events areproximate to the desired spacetime event; displaying the retrievedpersonal photos to the second user; enabling the second user to select apersonal photo from among the displayed personal photos; and providingto the second user the electronic address that corresponds to theselected personal photo.
 9. A system for establishing a connectionbetween two individuals using an interpersonal spacetime interactionsystem, comprising: a website configured to enable a first user tospecify a spacetime event and annotations for the spacetime event, thespacetime event comprising a subset of spacetime, the specifiedspacetime event including a spatial portion and a temporal portion, eachspacetime event corresponding to a three-dimensional coordinate systemin which the spatial portion of the spacetime event is a two-dimensionalgeometric area corresponding to an area on the surface of the earth andthe temporal portion is a time interval; a spacetime database configuredto store spacetime events and the annotation for the spacetime events asdata objects, each data object stored as a private event of the firstuser, the first user comprising the owner of the data object; a webinterface configured to: receive a query for the spacetime database, thequery including a specification of a desired spacetime event, the querybeing initiated by a second user; retrieve every data object in thespacetime database that meets both of the following two conditions: (a)the spacetime event of the data object to be retrieved is proximate tothe desired spacetime event and (b) there exists in the database atleast one data object that is owned by the second user such that thespatial portion of the data object owned by the second user contains thecenter of the spatial portion of the data object to be retrieved; andestablish, in response to the retrieved data objects, a communicationchannel between the first and the second user.
 10. The system of claim 9wherein, each spacetime event corresponds to one or more parallelepipedsor one or more cylinders in a three-dimensional coordinate system inwhich two of the dimensions are spatial and refer to points on thesurface of the earth and the third dimension is time.
 11. The system ofclaim 9, wherein a spacetime event is proximate to the desired spacetimeevent if the center of its spatial portion lies inside the geometricarea of the spatial portion of the desired spacetime event, and the timeinterval of the temporal portion of the spacetime event intersects withthe temporal portion of the desired spacetime event.
 12. The system ofclaim 9, wherein the two-dimensional geometric area is a rectangulararea.
 13. The system of claim 9, wherein the website is furtherconfigured to enable a first user to specify a spacetime event byreceiving an indication from the first user of the center of the spatialportion of the spacetime event on an interactive map.
 14. The system ofclaim 9, wherein the website is further configured to enable a firstuser to specify a spacetime event by receiving a selection of a date, astart time of the time interval and a stop time of the time interval tospecify the temporal portion of the spacetime event.
 15. The system ofclaim 9, wherein the spatial portion of the desired spacetime eventcorresponds to a visible portion of an interactive map.
 16. The systemof claim 9, further comprising: a user database for maintaining recordsfor users, each record including an electronic address and a personalphoto; a second web interface configured to retrieve from the userdatabase personal photos of the owners of those data objects in thespacetime database whose corresponding spacetime events are proximate tothe desired spacetime event; a network device configured to display theretrieved personal photos to the second user; and a third web interfaceconfigured to: enable the second user to select a personal photo fromamong the displayed personal photos; and provide to the second user theelectronic address that corresponds to the selected personal photo.